<?php
	/**
	 * Object representing the Library table in th database
	 * 
	 * @author Dragan
	 * @date 2012-06-21
	 */
	class Document{
		protected $_id;
		protected $_uid;
		protected $_additionDate;
		protected $_modifiedDate;
		protected $_addedBy;
		protected $_modifiedBy;
		protected $_categories;
		protected $_notes;
		protected $_metadata;
		protected $_projects;
		protected $_file;
		protected $_supplementaryFiles;
		
		/**
		 * Empty constructor to initialize the objects
		 *
		 */
		public function __construct(){
			$this->_id = 0;
			$this->_uid = "";
			$this->_addedBy = new User();
			$this->_modifiedBy = new User();
			$this->_categories =  array();
			$this->_notes =  array();
			$this->_additionDate = "";
			$this->_modifiedDate = "";
			$this->_metadata = new Metadata();
			$this->_file = new File();
			$this->_projects = array();
			$this->_supplementaryFiles = array();
		}
		
		
		
		
		/**
		 * @return the $_id
		 */
		public function getId() {
			return $this->_id;
		}

		/**
		 * @return the $_uid
		 */
		public function getUid() {
			return $this->_uid;
		}

		/**
		 * @return the $_additionDate
		 */
		public function getAdditionDate() {
			return $this->_additionDate;
		}

		/**
		 * @return the $_modifiedDate
		 */
		public function getModifiedDate() {
			return $this->_modifiedDate;
		}

		/**
		 * @return the $_addedBy
		 */
		public function getAddedBy() {
			return $this->_addedBy;
		}

		/**
		 * @return the $_modifiedBy
		 */
		public function getModifiedBy() {
			return $this->_modifiedBy;
		}

		/**
		 * @return the $_categories
		 */
		public function getCategories() {
			return $this->_categories;
		}

		/**
		 * @return the $_notes
		 */
		public function getNotes() {
			return $this->_notes;
		}

		/**
		 * @return the $_metadata
		 */
		public function getMetadata() {
			return $this->_metadata;
		}

		/**
		 * @return the $_file
		 */
		public function getFile() {
			return $this->_file;
		}

		/**
		 * @return the $_projects
		 */
		public function getProjects() {
			return $this->_projects;
		}
                
                /**
                 *
                 * @return type 
                 */
                public function getSupplementaryFiles() {
			return $this->_supplementaryFiles;
		}

		/**
		 * @param field_type $_id
		 */
		public function setId($_id) {
			$this->_id = $_id;
		}

		/**
		 * @param field_type $_uid
		 */
		public function setUid($_uid) {
			$this->_uid = $_uid;
		}

		/**
		 * @param field_type $_additionDate
		 */
		public function setAdditionDate($_additionDate) {
			$this->_additionDate = $_additionDate;
		}

		/**
		 * @param field_type $_modifiedDate
		 */
		public function setModifiedDate($_modifiedDate) {
			$this->_modifiedDate = $_modifiedDate;
		}

		/**
		 * @param field_type $_addedBy
		 */
		public function setAddedBy($_addedBy) {
			$this->_addedBy = $_addedBy;
		}

		/**
		 * @param field_type $_modifiedBy
		 */
		public function setModifiedBy($_modifiedBy) {
			$this->_modifiedBy = $_modifiedBy;
		}

		/**
		 * @param field_type $_categories
		 */
		public function setCategories($_categories) {
			$this->_categories = $_categories;
		}

		/**
		 * @param field_type $_notes
		 */
		public function setNotes($_notes) {
			$this->_notes = $_notes;
		}

		/**
		 * @param field_type $_metadata
		 */
		public function setMetadata($_metadata) {
			$this->_metadata = $_metadata;
		}

		/**
		 * @param field_type $_file
		 */
		public function setFile($_file) {
			$this->_file = $_file;
		}
		
		/**
		 * @param multitype: $_projects
		 */
		public function setProjects($_projects) {
			$this->_projects = $_projects;
		}
                
                /**
                 *
                 * @param type $_supplementaryFiles 
                 */
                public function setSupplementaryFiles($_supplementaryFiles) {
			$this->_supplementaryFiles = $_supplementaryFiles;
		}

	}
?>
